#ifndef _COMMUNICATE_H_
#define _COMMUNICATE_H_

#include <stdlib.h>
#include <INTRINS.H>

#define Communicate_Uart0 0
#define Communicate_USCI0 1
#define Communicate_USCI1 2
#define Communicate_USCI2 3
#define Communicate_USCI3 4
#define Communicate_USCI4 5
#define Communicate_USCI5 6
#include "CommunicateConfig.h"
// #define Communicate_include(Communicate_x) (Communicate_x == Computer_Uart || Communicate_x == ESP32_Uart)

#include "sc95f_uart0.h"
#include "sc95f_usci0.h"
#include "sc95f_usci1.h"
#include "sc95f_usci2.h"
#include "sc95f_usci3.h"
#include "sc95f_usci4.h"
#include "sc95f_usci5.h"

void Communicate_init(uint8_t clinet);
void Communicate_sendData8(uint8_t clinet, uint8_t data8);
uint8_t Communicate_receiveData8(uint8_t clinet);
void Communicate_sendString8(uint8_t clinet, uint8_t* str);
bool Communicate_receiveString8(uint8_t clinet, uint8_t** str);

#endif
